package jokode

import "fmt"

type NoneLogger struct {
}

func (l *NoneLogger) Debug(...any) {
	// do nothing...
}

func (l *NoneLogger) Info(...any) {
	// do nothing...
}

func (l *NoneLogger) Warn(...any) {
	// do nothing...
}

func (l *NoneLogger) Error(...any) {
	// do nothing...
}

func (l *NoneLogger) Fatal(...any) {}

func (l *NoneLogger) Debugf(string, ...any) {
	// do nothing...
}

func (l *NoneLogger) Infof(string, ...any) {
	// do nothing...
}

func (l *NoneLogger) Warnf(string, ...any) {
	// do nothing...
}

func (l *NoneLogger) Errorf(string, ...any) {
	// do nothing...
}

func (l *NoneLogger) Fatalf(format string, args ...any) {
	panic(fmt.Sprintf(format, args...))
}

func (l *NoneLogger) Sync() error {
	return nil
}
